﻿using System;
using Microsoft.Samples.ServiceHosting.StorageClient;

namespace ZeCloud.Resto55.Business.Table
{
    /*
        * Element que l'on peut commander
        * Il y aurait des éléments par défaut (Café, Pression, Menu du jour)
        */
    public class Element : TableStorageEntity
    {
        private string auteur;
        private string categorie;
        private string description;
        private string title;
        private string uniqueId;

        // User defined properties
        public string Auteur
        {
            get
            {
                return this.auteur;
            }
            set
            {
                this.auteur = value;
            }
        }
        public string Categorie
        {
            get
            {
                return this.categorie;
            }

            set
            {
                this.categorie = value;
            }
        }

        public string Description
        {
            get
            {
                return this.description;
            }
            set
            {
                this.description = value;
            }
        }

        public string Title
        {
            get
            {
                return this.title;
            }
            set
            {
                this.title = value;
            }
        }

        public string UniqueId
        {
            get
            {
                return this.uniqueId;
            }

            set
            {
                this.uniqueId = value;
            }
        }

        public Element()
        {
        }

        public Element(string in_idResto, string in_title, string in_auteur, string in_categorie, string in_description)
        {
            // Resto
            PartitionKey = in_idResto;

            // Date
            RowKey = in_title;
            title = in_title;
            auteur = in_auteur;
            categorie = in_categorie;
            description = in_description;
            uniqueId = GetElementID();
        }

        public string GetElementID()
        {
            return PartitionKey + "_" + RowKey;
        }
    }
}
